{"cells":[{"metadata":{},"cell_type":"markdown","source":"## DS 3 - Première NSI\n### Consignes :\n- Votre code doit être bien structuré et les fonctions correctement définies.\n- L'indentation entre vos lignes de programmation sera prise en compte dans le barème.\n- Vous n'avez pas le droit d'utiliser dans vos programmes les fonctions `min` et `max` de python, ni la notion `**` pour fusionner les listes de dictionnaires."},{"metadata":{},"cell_type":"markdown","source":"### Question 1\nÉcrire une fonction `trouver_maximum` qui retourne le maximum d'une liste donnée.\n\n**Exemple d'entrée :**\n```python\ntrouver_maximum([3, 7, 2, 9, 4]) # retourne 9\n```\n\n**À recopier et compléter :**\n
\n\n```python\ndef trouver_maximum(liste):\n \n # compléter\n \n return max_val\n```\n
"},{"metadata":{},"cell_type":"markdown","source":"### Question 2\nUtiliser la fonction `trouver_maximum` pour implémenter une fonction `tri_inverse` qui trie une liste par ordre décroissant.\n\n**Exemple d'entrée :**\n```python\ntri_inverse([3, 7, 2, 9, 4]) # retourne [9, 7, 4, 3, 2]\n```\n\n**À recopier et compléter :**\n\n
\n \n```python\ndef tri_inverse(liste):\n \n # compléter\n \n return resultat\n```\n
"},{"metadata":{},"cell_type":"markdown","source":"### Question 3\nÉcrire une fonction `tri_insertion_inverse` qui trie une liste par ordre **décroissant** en utilisant la méthode du tri par insertion.\n\n**Exemple d'entrée :**\n```python\ntri_insertion_inverse([3, 7, 2, 9, 4]) # retourne [9, 7, 4, 3, 2]\n```\n\n**À recopier et compléter :**\n\n
\n \n```python\ndef tri_insertion_inverse(liste):\n \n # compléter\n \n return liste\n```\n
"},{"metadata":{},"cell_type":"markdown","source":"### Question 4\nÀ partir du dictionnaire suivant :\n```python\ndonnees = [ {\"produit\": \"Pomme\", \"prix\": 1.2},\n {\"produit\": \"Banane\", \"prix\": 0.8},\n {\"produit\": \"Orange\", \"prix\": 1.5},\n {\"produit\": \"Mangue\", \"prix\": 2.0} ]\n```\nCréer une fonction `tri_par_prix` qui trie la liste `donnees` par prix croissant.\n\n**À recopier et compléter :**\n\n
\n\n```python\ndef tri_par_prix(liste):\n # compléter\n \n return liste\n```\n
"},{"metadata":{},"cell_type":"markdown","source":"### Question 5\nÀ partir du nouveau dictionnaire suivant :\n```python\ncodes_barres = [ {\"produit\": \"Pomme\", \"code_barre\": \"1234567890123\"},\n {\"produit\": \"Banane\", \"code_barre\": \"9876543210987\"},\n {\"produit\": \"Orange\", \"code_barre\": \"2345678901234\"},\n {\"produit\": \"Mangue\", \"code_barre\": \"5678901234567\"} ]\n```\nCréer une fonction `def fusionner_listes` qui réalise une jointure entre la liste `donnees` de la question 4 et la liste `codes_barres` , en utilisant la clé commune \"produit\" pour fusionner les informations des deux listes dans une nouvelle liste ? \n\n**À recopier et compléter :**\n\n
\n\n```python\ndef fusionner_listes(liste1, liste2): \n # a compléter\n return liste\n```\n
"}],"metadata":{},"nbformat":4,"nbformat_minor":2}